
//  公共接口
axios.defaults.baseURL = 'https://hmajax.itheima.net'


// 添加请求拦截器
axios.interceptors.request.use(
  function (config) {
  // 在发送请求之前做些什么,比如: 统一设置token
  const token = localStorage.getItem('token')
  if(token){
    config.headers['Authorization'] = token
  }
  return config;
  }, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error);
  });
  
  // 添加响应拦截器  {处理token失效}
axios.interceptors.response.use(function (response) {
// 2xx 范围内的状态码都会触发该函数。
// 对响应数据做点什么，比如: 数据剥离
return response;
}, function (error) {
// 超出 2xx 范围的状态码都会触发该函数。
// 对响应错误做点什么: 比如统一处理token失效
console.log(error,'我是错误的信息');
if(error.response.status == 401){
  //  删除 token 本地储存
  localStorage.removeItem('usrname')
  localStorage.removeItem('token')
  showToast('token失效,请重新登录')
  //  一秒后跳转到登录页
  setTimeout(()=>{
    location.href = './login.html'
  },1500)
}
return Promise.reject(error);
});



// 抽取请提示函数
function showToast(msg){
  //实例化Toast
  const toastDom = document.querySelector('.my-toast')
  const toast = new bootstrap.Toast(toastDom)
  //  提示 弹窗内容
  document.querySelector('.toast-body').innerText = msg
  // 显示 toast
  toast.show()
}

//  获取本地储存的  token
function checklogin(){
  const token = localStorage.getItem('token')
  if(!token){
showToast('请先登录')
setTimeout(()=>{
 location.href = './login.html'
},1500)
}
}

//  用户名函数
function renderUsername(){
  document.querySelector('.username').innerText = localStorage.getItem('username') ? localStorage.getItem('username') : ''
}

//  退出 登录按钮 logout
function logout(){
  document.querySelector('#logout').addEventListener('click',function(){
    localStorage.removeItem('token')
    localStorage.removeItem('username')
    // 跳转登录页
    location.href = './login.html'
  })
}